package com.lcj.bff.customer.feign;

import com.lcj.bff.customer.controller.form.MessageIdForm;
import com.lcj.bff.customer.controller.form.MessageUserIdAndIdentifyForm;
import com.lcj.bff.customer.controller.form.SearchMessageByPageForm;
import com.lcj.bff.customer.controller.form.SendNewOrderMessageForm;
import com.lcj.common.util.Result;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;

@FeignClient(value = "aoch-snm")
public interface SnmServiceApi {

    /**
     * 异步发送订单消息到司机队列
     * @param form
     * @return
     */
    @PostMapping("/message/order/new/sendNewOrderMessageAsync")
    public Result sendNewOrderMessageAsync(SendNewOrderMessageForm form);

    /**
     * 接收新订单账单消息
     * @param form
     * @return
     */
    @PostMapping("/message/receiveBillMessage")
    public Result receiveBillMessage(MessageUserIdAndIdentifyForm form);

    /**
     * 分页查询消息
     * @param form
     * @return
     */
    @PostMapping("message/searchMessageByPage")
    public Result searchMessageByPage(SearchMessageByPageForm form);

    @PostMapping("message/searchMessageById")
    public Result searchMessageById(MessageIdForm form);

    @PostMapping("message/updateUnreadMessage")
    public Result updateUnreadMessage(MessageIdForm form);

    @PostMapping("message/deleteMessageRefById")
    public Result deleteMessageRefById(MessageIdForm form);
}